草庐IT

c++ - ofstream 指针的 vector

全部标签

c - "Dont let cmd window to close automatically"- 我该怎么做?

这个问题在这里已经有了答案:preventinganexefilefromclosing[duplicate](5个答案)关闭5年前。看我编译了一个c程序,准备了一个a.exe现在每当我点击a.execmd窗口打开a.exe运行并自动关闭该窗口。运行cmd窗口不会自动关闭的a.exe后,我应该在程序中或任何地方做些什么。

c - c中的全局键盘 Hook

我想写一个全局键盘钩子(Hook)来禁止任务切换。当我用谷歌搜索时,我在c#、cpp(和delphi)中找到了很多代码,但我需要一些关于钩子(Hook)的基本概念(最好是例子在C中)。因此,请建议可以帮助我从C的角度理解事物的资源和链接。PS:我找到了一个不错的workingexample(适用于winXP和旧版本),但是当我尝试编译代码时,它给了我:我尝试在所有header中搜索“IDC_”常量(MinGWgcc安装附带的默认header和开发人员提供的header),但没有运气......如果有人可以编译代码并使其运行请帮助我。我没有在这里上传源代码本身,因为有一些头文件依赖项,在

c - 如果声明了一个大变量,为什么 C 程序会崩溃?

我在MicrosoftVisualStudioExpress2012中编译了以下C程序:intmain(){inta[300000];return0;}这会因msvcr110d.dll!__crtFlsGetValue()中的堆栈溢出而崩溃。如果我将数组大小从300,000更改为200,000,它可以正常工作(这个简单的程序可以说是“有效”,因为它什么都不做)。我在Windows7上运行,也曾在Cygwin下使用gcc进行过尝试,它产生了相同的行为(在本例中为段错误)。这到底是怎么回事? 最佳答案 C中自动对象使用的空间大小(“堆栈

C++ Vector 给出难以置信的意外值(value)

我有这个代码:std::vectorloc;loc.push_back(cpx);loc.push_back(cpy);loc.push_back(play.GetSize().x);loc.push_back(70);std::cout在我正在制作的游戏中,但即使当我打印loc[2]和loc[3]的值时,它们与它们应该的值完全不同,当我运行这段代码时,我得到loc[3]等于70070而不是70.有人知道如何解决这个问题吗? 最佳答案 你还有一个cout没有endl或\n您忘记删除的代码中的某处。那个打印700,而70是代码示例中最

c - 在 win32 api 中的文本文件末尾追加文本

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭9年前。我试图打开一个文本文件,向其中写入一些数据,然后在已写入文件的数据末尾追加一些数据,但这不起作用。任何人都可以帮我找出我的代码的问题吗?代码片段:charbuffer[]="Writethistexttofile";DWORDdwWritten;//numberofbyteswrittentofileHANDLEhFile;hFile=CreateFile

c - 使用 while(1) 循环时如何降低 CPU 使用率达到 100%

我正在研究UDP服务器/多客户端应用程序。有多个线程处理多个客户端。有一个线程不断向每个事件客户端发送KEEPALIVE消息。由于此线程处于while(1)中,因此CPU使用率达到100%。因为我希望此功能继续,所以我使用了while(1)线程。我还尝试在每次执行while后添加一个sleep,但我认为sleep()不会释放CPU。有什么办法可以降低特定时间的CPU使用率。例如,执行一次while后,我可以释放CPU大约10秒,然后继续返回while。请帮帮我。非常感谢。 最佳答案 sleep-暂停当前线程的执行,直到超时间隔结束。

c++ - 如何在后台进程中处理来自 Windows 任务管理器的 "End Task"?

我编写了一个简单的测试程序(TestProgram.exe)来学习如何处理CTRL_CLOSE_EVENT,这是我的观察结果和我的问题:1)当我双击TestProgram.exe启动它时,如果我现在转到任务管理器,TestProgram.exe会列在“应用程序”下。当我在TestProgram.exe上执行“结束任务”时,将调用我的CTRL_CLOSE_EVENT处理程序。但是2)当我打开命令提示符并启动TestProgram.exe时,它​​列在任务管理器下的“后台进程”下,并且对其执行“结束任务”不会导致CTRL_CLOSE_EVENT。我的真实应用是按照上面案例2)中的描述使用的

你可以使用用mingw编译的程序访问其他程序的内存吗?

我在Windows8.1上编写了这个非常简单的程序,并使用Mingw的gcc对其进行了编译。我用“test.exe>t.txt”和“test.exe>t1.txt”运行它,输出不同(即使它使用虚拟地址)。它跑了一会儿,然后就崩溃了。我决定对此进行测试,因为我正在阅读一本关于操作系统的书。是否正在读取其他程序的内存?那不是不应该发生的吗?我可能误解了什么......#includeintmain(intargc,char*argv[]){intr=0;intp[4]={1,5,4,3};for(r=0;p[r]!=1111111111111111;r++){p[2]=p[r];print

c - 为什么通配符不能代表FindFirstFile中的目录?

我正在尝试使用FindFirstFile检查某些文件是否遵循某个模式,但通配符*似乎不能代表目录。intmain(){WIN32_FIND_DATAWfindFileData;wchar_tpath[]=LR"(.\*\*.txt)";HANDLEhFind=FindFirstFileW(path,&findFileData);if(hFind!=INVALID_HANDLE_VALUE){do{printf("%S\n",findFileData.cFileName);}while(FindNextFileW(hFind,&findFileData));}}对于这棵树,什么都不打印:

c++ - 是否可以从 stdin 输入指向指针的地址?

不久前,我有了一些简单的进程间通信的想法:一个进程将地址输出到一个指针,我将其复制到另一个进程的输入,然后更改原始变量。我是这样实现的:#include#includeusingnamespacestd;intmain(){boolp;cin>>p;if(p){intn;n=0;cout>n;*point+=n;}return0;}我使用scanf是因为cin提示并且无法编译。我尝试用两个进程运行它,但在我启动第二个实例并输入指针的地址(如第一个实例输出的那样)后,它卡住了。因为我只能访问Windows,所以我不知道它是否有SIGSEGV,或者它是否做了一些完全不同的事情。是我试图更改